import uStorage from './storage.js'
import {ref,getCurrentInstance} from 'vue'

const prefix = 'MyBusiness.';

const storage = {
	// vuex lifeData
	setLifeData(value) {
		return uStorage.set(prefix + 'LifeData', value);
	},
	// vuex lifeData
	getLifeData() {
		return uStorage.get(prefix + 'LifeData');
	},
	// 设置token缓存
	setToken(token, timeout) {
		uStorage.set(prefix + 'Token', getApp().globalData.VuePrototype.$cw.jsEncrypt(token), timeout);
	},
	// 获取token
	getToken() {
		const token=uStorage.get(prefix + 'Token');
		if(token){
			return  getApp().globalData.VuePrototype.$cw.jsDecrypt(token);
		}
	},
	// 移除token
	removeToken() {
		uStorage.remove(prefix + 'Token');
	},
	
	// 设置当前登录用户信息
	setAppUserInfo(userObj,globalData=getApp().globalData) {
		//因为当App.$globalData.userInfo为空的时候，assign会报错，导致登陆时出问题
		if(globalData.userInfo){
			Object.assign(globalData.VuePrototype.$globalData.userInfo,userObj);
		}else{
			globalData.userInfo = userObj;
		}
		
		return uStorage.set(prefix + 'UserInfo', globalData.VuePrototype.$cw.jsEncrypt(globalData.userInfo));
	},
	// 获取当前登录用户信息
	getAppUserInfo() {
		return getApp().globalData.VuePrototype.$cw.jsDecrypt(uStorage.get(prefix + 'UserInfo'));
	},
	// 移除当前登录用户信息
	removeAppUserInfo() {
		getApp().globalData.VuePrototype.$globalData.userInfo = null;
		return uStorage.remove(prefix + 'UserInfo');
	},
	
	// 移除所有
	clear() {
		uStorage.clear();
	},
}

export default storage
